package com.nextel.project.pedido.bean;

import pe.com.nextel.rms.DataInputStreamX;
import pe.com.nextel.rms.DataOutputStreamX;
import pe.com.nextel.rms.PersistenteX;
import java.io.IOException;


import org.kxml2.io.KXmlParser;
import org.kxml2.io.KXmlSerializer;
import pe.com.nextel.util.ArrayList;
import pe.com.nextel.util.Iterator;
import pe.com.nextel.util.List;
import pe.com.nextel.util.StringUtils;


/**
 *
 * @author eespinoza
 */
public class ArticuloPorNombreBean extends PersistenteX {
    
    private int idRecordArticulo;
    private short posRecordArticulo;
    private String nombreArticulo;
//    private String codigoArticulo;
    
    public void persistir(DataOutputStreamX dataOutput, List list) throws IOException {
        dataOutput.writeInt(list.size( ));
        for (Iterator it = list.iterator(); it.hasNext();) {
            ArticuloPorNombreBean articuloNombre = (ArticuloPorNombreBean) it.next();
            dataOutput.writeInt(articuloNombre.getIdRecordArticulo());
            dataOutput.writeShort(articuloNombre.getPosRecordArticulo());
            dataOutput.writeString(StringUtils.stringNullToBlank(articuloNombre.getNombreArticulo()));

        }
    }
    
    public List recuperar(DataInputStreamX dataInput) throws IOException {
        List lista = new ArrayList();
        ArticuloPorNombreBean articuloNombre = null;
        int cant = dataInput.readInt();
        for (int i = 0; i < cant; i++) {
            articuloNombre = new ArticuloPorNombreBean();
            articuloNombre.setIdRecordArticulo(dataInput.readInt());
            articuloNombre.setPosRecordArticulo(dataInput.readShort());
            articuloNombre.setNombreArticulo(dataInput.readString());
 
            
            lista.add(articuloNombre);
        }
        
        return lista;
    }
    
    public int getIdRecordArticulo() {
        return idRecordArticulo;
    }
    
    public void setIdRecordArticulo(int idRecordArticulo) {
        this.idRecordArticulo = idRecordArticulo;
    }
    
    public short getPosRecordArticulo() {
        return posRecordArticulo;
    }
    
    public void setPosRecordArticulo(short posRecordArticulo) {
        this.posRecordArticulo = posRecordArticulo;
    }
    
    public String getNombreArticulo() {
        return nombreArticulo;
    }
    
    public void setNombreArticulo(String nombreArticulo) {
        this.nombreArticulo = nombreArticulo;
    }
    
    public void writeXMLObject(KXmlSerializer writer) throws IOException {
    }
    
    public void readXMLObject(KXmlParser parser) throws IOException {
        setIdRecordArticulo(Integer.parseInt(parser.getAttributeValue(null, "i")));
        setPosRecordArticulo(Short.parseShort(parser.getAttributeValue(null, "p")));
        setNombreArticulo(parser.getAttributeValue(null, "n"));
    }
    
    public void clear(){
        
    }
    
}
